#!/bin/bash
# 部署GPU自动扩缩容系统 (端口2000)

set -e

echo "开始部署GPU自动扩缩容系统..."

# 检查是否在项目根目录
if [ ! -d "4-management/01-gpu-autoscaling" ]; then
    echo "错误: 请在项目根目录执行此脚本"
    exit 1
fi

# 进入自动扩缩容目录
cd 4-management/01-gpu-autoscaling

# 安装依赖
echo "安装Python依赖..."
pip install -r requirements.txt

# 创建日志目录
mkdir -p logs

# 停止旧服务 (如果存在)
echo "停止旧服务..."
pkill -f "gunicorn.*2000" || true
sleep 2

# 启动新服务
echo "启动GPU自动扩缩容系统 (端口2000)..."
nohup gunicorn -w 2 -b 127.0.0.1:2000 \
    --access-logfile logs/autoscaling-access.log \
    --error-logfile logs/autoscaling-error.log \
    --timeout 300 \
    --daemon \
    start:app > logs/autoscaling-startup.log 2>&1

# 等待服务启动
sleep 3

# 检查服务状态
if curl -s http://127.0.0.1:2000/health > /dev/null; then
    echo "✅ GPU自动扩缩容系统启动成功 (端口2000)"
else
    echo "❌ GPU自动扩缩容系统启动失败"
    echo "查看日志: tail -f logs/autoscaling-error.log"
    exit 1
fi

echo "GPU自动扩缩容系统部署完成"
echo "访问地址: http://127.0.0.1:2000"
echo "日志位置: 4-management/01-gpu-autoscaling/logs/"
